/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package supervise;

import java.util.ArrayList;
import jwnl.JWNLDistances;

/**
 *
 * @author mida
 */
public class Ensemble {

    int num;
    ArrayList<Element> Ens; // ensemble d'éléments

    public Ensemble(int num) {
        Ens = new ArrayList<Element>();
        this.num = num;
    }

    Ensemble(int num, Element e) // créer un ensemble é partir d'un élément et détermination de centre
    {
        Ens = new ArrayList<Element>();
        this.num = num;
        this.Ens.add(e);
    }

    public void add(Element e) // créer un ensemble é partir d'un élément et détermination de centre
    {
        this.Ens.add(e);
    }

    public int size() {
        return Ens.size();
    }

    public Element get(int i) {
        return Ens.get(i);
    }

    @Override
    public String toString() {
        StringBuffer buf = new StringBuffer();
        buf.append(num + ") ");
        for (int i = 0; i < Ens.size() - 1; i++) {
            buf.append(Ens.get(i).toString() + " - ");
        }
        buf.append(Ens.get(Ens.size() - 1).toString());
        return buf.toString();
    }

    boolean contains(String V) {
        for (int i = 0; i < Ens.size(); i++) {
            if (Ens.get(i).equals(V.toLowerCase())) {
                return true;
            }
        }
        return false;
    }

    double distance(String S, JWNLDistances d) {
        double dSim = 0.0;
        for (int i = 0; i < Ens.size(); i++) {
            dSim += Ens.get(i).distance(S, d);
        }
        return dSim / Ens.size();
    }
}
